package com.bluesky.mq.po;

import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

import java.time.LocalDateTime;

@TableName("t_msg_lesson030")
@Data
public class MsgPO {

    /**
     * 消息id
     */
    private String id;

    /**
     * 消息体
     */
    private String bodyJson;

    /**
     * 消息期望投递时间，大于当前时间，则为延迟消息，否则会立即投递
     */
    private LocalDateTime expectSendTime;

    /**
     * 消息实际投递时间
     */
    private LocalDateTime actualSendTime;


    /** 0待投递，1投递中，2投递成功，3投递失败
     * 消息状态，0：待投递，1：投递成功，3：投递失败
     */
    private Integer status;

    /**
     * status = 0 时，记录消息投递失败的原因
     */
    private String failMsg;

    /**
     * 已投递失败的次数
     */
    private Integer failCount;

    /**
     * 投递MQ失败了，是否还需要重试？1：是，0：否
     */
    private Integer sendRetry;

    /**
     * 投递失败后，下次重试时间
     */
    private LocalDateTime nextRetryTime;

    /**
     * 创建时间
     */
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
}
